package com.itheima.exception;

public class Test1 {

    public static void main(String[] args) {

        //异常的作用：
        // 1. 定位程序bug
        // 2. 作为方法内部的特殊返回值，以便通知调用者方法的执行问题

        System.out.println("程序开始");
        try {
            int result = div(10, 0);
            System.out.println(result);
            System.out.println("底层方法执行成功");
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("底层方法执行失败");
        }

        System.out.println("程序结束");
    }


    //求两数相除
    public static int div(int a, int b) throws Exception {
        if (b == 0) {
            System.out.println("除数不能为0！");
            //return -1;      //代表除数为0

            //返回一个异常给上层调用者，返回的异常还能告知调用者底层方法执行成功还是失败
            throw new Exception("除数不能为0！");
        }
        return a / b;
    }
}
